<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>变量</title>
    <script>
        // 声明变量
        // 旧语法标准：使用 var 关键词声明变量
        var name = "tom";
        console.log(name);

        // 新语法标准：使用 let 关键词声明变量
        let age = 50;
        console.log(age);

        // 为什么说 JavaScript 变量是弱类型的
        // [1]声明变量时可以指定任何数据类型
        let a = 100;
        let b = "good";
        let c = true;

        // [2]变量声明之后，可以赋值任何其它类型数据
        a = "hello";
        b = 100;
        c = "good";

        // JavaScript 整体对标识符都是要求严格区分大小写的
        let stuName = "peter";
        let STUNAME = "harry";

        console.log(stuName)
        console.log(STUNAME)

        // 使用未声明的变量，会报错
        // Uncaught ReferenceError: goodPig is not defined
        // caught 是 catch 这个单词的被动语态，表示被捕获
        // Uncaught 的意思就是没有被捕获
        // ReferenceError 是一个错误类型，表示引用错误
        console.log(goodPig);
    </script>
</head>
<body>

</body>
</html>